Universal Data Relationship Inference Engine

ABSTRACT

While a user is viewing content on a computer display, the universal data relationship inference engine presents related information from disparate data sources. A normalized index is maintained that indexes content to a set of standard taxonomy terms. The inference engine parses content being viewed by the user. If the content includes tags for some of the standard taxonomy terms, then the system may provide the user with the ability to view the related content that is indexed by the normalized index. If there are not taxonomy tags then the system may attempt to recognize non-standard taxonomy terms in the content in order to provide the user with related content. The inference engine may also identify related content by identifying synonyms to the taxonomy terms.

BACKGROUND OF THE INVENTION

It is often a goal of a business to have its employees perform their daily work at a higher level. For example, a business may desire that its sales force, call center representatives, or professional services representatives be more effective in their day-to-day business activities. One way to boost human performance is to provide people the information they need to do their jobs. Such information may include training, access to experts on specific topics, sample work products or other knowledge that is pertinent to helping the employee do his or her job

For example, a computer system may allow a call center representative to perform a search on support materials. Or the system may allow the call center representative access to a trouble ticket system for the purpose of discovering how similar problems have been solved in the past. Providing access to support materials is not without its problems. A company may have its content on too many different systems. This then requires a computer user looking for an answer to search each system individually. Or, a company may have its content stored in an unorganized fashion. While an answer may exist, the user may be unable to find the answer among the unorganized materials. Or the user may not know how to properly navigate the computer system to find the information he or she needs or may not know how to formulate an effective query to search for the information. These and other problems can prevent people from performing at a higher level.

SUMMARY OF THE INVENTION

While a user is viewing content on a computer display, the universal data relationship inference engine may present related information from disparate data sources. A normalized index may be maintained that indexes content to a set of standard taxonomy terms. The inference engine may parse content being viewed by the user. If the content includes tags for some of the standard taxonomy terms, then the system may provide the user with the ability to view the related content that is indexed by the normalized index. If there are not standard taxonomy tags, then the system may attempt to recognize non-standard tags in the content or derive standard tags in order to provide the user with related content. The inference engine may also identify related content by identifying synonyms to the taxonomy terms.

It is an objective of the invention to provide computer system users with the ability to leverage content that is relevant to the user's task at hand. It is another objective of the invention to provide highly relevant related information to a computer user. It is yet another objective of the invention to provide related content in near proximity to the task being handled by a computer user. These and other objectives are realized by embodiments of the present invention.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a flowchart of one embodiment of the present invention.

FIG. 2 is a screen shot of a computer application in use by a computer user.

FIG. 3 is a schematic diagram illustrating a feature of the embodiment of FIG. 1.

FIG. 4 is a flowchart of another embodiment of the present invention.

FIG. 5 is a schematic diagram of a feature of the present invention that, in the example, is accessible from the computer application of FIG. 2.

DETAILED DESCRIPTION OF THE INVENTION

Aspects of the invention may be embodied in “A Universal Data Relationship Inference Engine” system, which is also referred to as the AUDRIE system for short. FIG. 1 is a flowchart that maps the major system components in one embodiment of the AUDRIE system 100. As can be seen in FIG. 1, this embodiment of AUDRIE includes three subsystems, namely, the tag normalization subsystem 105, the index normalization subsystem 110 and the display subsystem 115.

FIG. 2 is a screen shot showing a primary computer application 205 as well as reference support offered by AUDRIE 210 (shown within the dashed lines). The flowchart of FIG. 1 can be explained through reference to this screen shot.

In step 120, a computer user may view new content. This content may be displayed while the user is accessing a web site, while she is running a software application (such as is shown in FIG. 2), etc. The content being viewed 205 drives what reference support is offered by AUDRIE 210. In one embodiment of the invention, AUDRIE reacts to three content scenarios. In the first scenario, the displayed content may be identified as content that has already been tagged via a standard taxonomy that is recognizable by the AUDRIE system. In the second scenario, the displayed content may be managed by another application that has its own taxonomy, such taxonomy already having been mapped to AUDRIE's standard taxonomy. In the third scenario, the viewed content may contain no tags or may be tagged with an unknown taxonomy. In this case, AUDRIE reads the content to discover which of the standard taxonomy terms (or synonyms to terms) are contained in the content.

These three scenarios are handled in steps 125-145, which make up AUDRIE's Tag Normalization subsystem. In the embodiment shown in FIG. 1, AUDRIE first determines whether the content is tagged using a recognized, standard taxonomy (step 125). If so, then AUDRIE may parse the standard tags in the content (step 130). If there are not standard tags, AUDRIE determines whether the content is based on a taxonomy that has been previously mapped (step 135). If so, then AUDRIE may read the content's tags and use a database 150 to convert them to the mapped standard tags (step 140). If the content does not follow a standard taxonomy and if the content also does not include tags for which a known mapping exists, then AUDRIE reads the content for standard taxonomy terms and synonyms (step 145). Reading screens for content is well known in the art. For example, for web site content, it is well known that a computer program can be designed to parse the underlying HTML code.

Through these three scenarios, AUDRIE's Tag Normalization subsystem 105 compiles a list of normalized tags representing the type of content being displayed to the user. AUDRIE's Display subsystem 115 handles retrieving reference materials related to the content and presenting these reference materials to the user. At step 155, AUDRIE searches a normalized index for the normalized tags for the current content to determine which reference materials may be related to the content that the user is viewing. Although AUDRIE could present all of these reference materials to the user, in one embodiment, AUDRIE deduces which subset of the materials might be most relevant to the displayed content and displays it in standard categories (step 160). Then only this most relevant reference material is made available to the user.

Element 210 of FIG. 2 shows one embodiment of a toolbar provided for by AUDRIE. As shown, AUDRIE provides the user access to various types of relevant content. Based on the content being viewed 205, a set of relevant tasks may be presented 215 (such as wanting to set up a new customer, wanting to complete a skill assessment, etc.). Relevant knowledge reference materials 230 may also be available. AUDRIE may also enable access to relevant collaboration materials 235 or relevant experts 240. The user may have access to relevant training 245 or to materials that support a relevant business process 250. Other relevant computer applications 255 as well as business intelligence 260 may be made available through AUDRIE. Of course, these types of reference materials are some of the many types that can be supported by AUDRIE.

The AUDRIE toolbar 210 may be configured to collapse and expand categories of reference materials to save screen real estate. In the example shown in FIG. 2, reference categories for which AUDRIE has determined relevant content may have blinking indicators 220 while blank categories have non-blinking indicators 225. By clicking on one of the blinking indicators 220, the user is able to expand the category from just the heading to the actual content within. For example, under the Experts category, FIG. 2 shows that AUDRIE has determined that James Smith, Sarah Martin and Erica Bayou can be contacted for expertise regarding the type of content currently being displayed 205. AUDRIE may enable additional reference materials to be presented or searched. In FIG. 2, each category expanded with content includes a “More” link. For example, in the Experts category, the user may click on this “More” link to access a search feature shown in FIG. 5. This enables the user to find reference materials that are outside of the short list of items displayed in the AUDRIE toolbar. For example, here the user is able to search for experts based on specific qualifications, such as a company or sales process.

As has now been explained, AUDRIE's Tag Normalization subsystem 105 determines the type of content being displayed to the user based on certain tags. AUDRIE's Display subsystem 115 searches for the tags in a normalized index in order to present the most relevant reference materials to the user. AUDRIE's Index Normalization subsystem 110, which builds and maintains this normalized index will now be described.

Reference materials may be stored in a series of content sources 180. For example, as FIG. 3 explains, in order to populate the Experts category 240, AUDRIE may rely on such content sources 180 as a company's HR employee directory 305, a database of CVs/resumes for the employees 310 and a skills database 315. In the embodiment shown in FIG. 1, AUDRIE creates an index 175 for each of these content sources. The index may be based on keywords or tags in the content sources. AUDRIE may have a background process 170 that builds these indexes 175. Much like identifying the type of content being displayed to the user, to build the indices this background process 170 may search the content sources 180 for standard tagging or for tagging that has been mapped to the standard tags. The process 170 may also look for standard taxonomy terms or synonyms of these terms in the content sources. Each content source index 175 may be combined to form a consolidated index 165. It is this consolidated index that AUDRIE's Display subsystem 115 may search to determine the relevant reference materials to make available to the user.

FIG. 3 also illustrates the concept of mapping non-standard taxonomies. FIG. 3 illustrates that taxonomies exist outside of AUDRIE. For example, a company may rely on a pre-existing expertise taxonomy to structure data about its employees. AUDRIE may map this expertise taxonomy 320 to its standard taxonomy to interface with the various HR content sources 325.

The foregoing description addresses embodiments encompassing the principles of the present invention. The embodiments may be changed, modified and/or implemented using various types of arrangements. Those skilled in the art will readily recognize various modifications and changes that may be made to the invention without strictly following the exemplary embodiments and applications illustrated and described herein, and without departing from the scope of the invention, which is set forth in the following claims. For example, the AUDRIE system described above provides for analyzing content being viewed by the user in three ways, namely, looking for standard tags in the content, looking for non-standard tags that have been mapped, and then looking for recognized terms and synonyms. One skilled in the art will recognize that the AUDRIE system can be developed in differing embodiments. For example, FIG. 4 shows a non-tagged version of AUDRIE that is also within the scope of the present invention. 

1. A system for presenting, to a computer user, reference information related to content being viewed by the computer user, the system comprising: an identification module for identifying taxonomy terms in content being viewed by a computer user, determining whether the content contains standard taxonomy tags or recognized non-standard taxonomy tags, and compiling a list comprising standard taxonomy terms relevant to the content; a normalized tag index module for locating words and tags contained in a plurality of content files from a plurality of disparate content sources, building for each of the plurality of content files an index of the located words and tags, and consolidating the built indices into a consolidated index stored on a database; a mapping module for mapping the taxonomy terms to standard taxonomy terms when the taxonomy terms are synonyms to standard taxonomy terms; a module for parsing the content being viewed for a plurality of taxonomy terms, searching a normalized index for at least one of the plurality of taxonomy terms for determining related content, and retrieving the related content; and a display module for displaying the related content to the computer user, and wherein the normalized tag index indexes related content from the plurality of disparate content sources.
 2. A system for presenting to a computer user, reference information from a plurality of content sources, related to content being viewed by the computer user, the system comprising: a parsing module for parsing the content being viewed for a plurality of taxonomy terms; a search module for searching a normalized index for at least one of the plurality of taxonomy terms for determining related content; a mapping module for mapping the taxonomy terms to standard taxonomy terms when the taxonomy terms are synonyms to standard taxonomy terms; a retrieval module for retrieving the related content; and a display module for displaying the related content to the computer user, wherein the normalized index indexes related content from a plurality of content sources.
 3. (canceled)
 4. The system of claim 2, wherein the display simultaneously displays the related content and the content being viewed by the computer user.
 5. A system for identifying taxonomy terms in content being viewed by a computer user, the system comprising: a determination module for determining whether the content being viewed by the computer user contains standard taxonomy tags or recognized non-standard taxonomy tags; and a list module for compiling a list comprising standard taxonomy terms relevant to the content parsing the content for a plurality of standard taxonomy term tags, wherein the plurality of taxonomy terms are stored in a database, and normalizing a plurality of non-standard tags by mapping non-standard taxonomy term tags to standard taxonomy terms stored in a database a mapping module for mapping the content to standard taxonomy terms when the content is synonyms to standard taxonomy terms; and a display module for displaying the related content to the computer user, wherein the normalized plurality of non-standard tags indexes related content from a plurality of content sources.
 6. The system of claim 5, wherein the list module further performs the step of: creating a plurality of standard taxonomy term tags for the content being viewed by comparing words in the content to a standard taxonomy terms and synonyms stored in a database.
 7. A system for creating a normalized tag index for use in presenting, to a computer user, information from a plurality of sources that is related to content being viewed by the computer user, the method comprising: a tag module for locating words and tags contained in a plurality of content files, based on identified taxonomy terms in content being viewed by the computer user, from a plurality of disparate content sources; an index module for building for each of the plurality of content files an index of the located words and tags; a consolidation module for consolidating the built indices into a consolidated index stored on a database a mapping module for mapping one or more of the words or tags to standard taxonomy terms when the one or more of the words or tags are synonyms to standard taxonomy terms; and a display module for displaying content related to the content being viewed to the computer user, wherein the consolidated index indexes related content from a plurality of content sources. 8.-9. (canceled)
 10. A system for enabling access to reference material while a computer user is viewing content on a display, the system comprising: a category display module for displaying category names for a plurality of reference categories in a region of the display; a materials module for choosing relevant reference material based on identified taxonomy terms in the content being viewed by the computer user, wherein each reference item in the chosen relevant reference material is associated with one of the reference categories; a mapping module for mapping the taxonomy terms to standard taxonomy terms when the taxonomy terms are synonyms to standard taxonomy terms; a presentation module for presenting a notice indicator on the display in proximity to each of the reference category names that is associated with chosen relevant reference material, for indicating to the computer user existence of relevant reference material; a first receiver for receiving from the computer user a category request for indicating a desired reference category; a display modification module for modifying the display to expand the desired reference category, ranking the reference items in the desired reference category for relevancy to the content being viewed, displaying a link for a predetermined number of highest ranked reference items, and displaying a “more” indicator for indicating to the computer user the existence of additional ranked reference items; and a second receiver receiving from the computer user a request for one of the displayed links. 11.-19. (canceled)
 20. A computer-implemented method for enabling access to reference material while a computer user is viewing content on a display, the computer including a processor and memory and the method comprising steps performed by the computer of: displaying, by the processor, category names for a plurality of reference categories in a region of the display based on the content being viewed by the computer user; choosing, by the processor, relevant reference material based on identified taxonomy terms in the content being viewed by the computer user, wherein each reference item in the chosen relevant reference material is associated with one of the reference categories; mapping, by the processor, the taxonomy terms to standard taxonomy terms when the taxonomy terms are synonyms to standard taxonomy terms; presenting, by the processor, a notice indicator on the display in proximity to each of the reference category names that is associated with chosen relevant reference material, for indicating to the computer user existence of relevant reference material; receiving, by the processor, from the computer user a category request for indicating a desired reference category; modifying, by the processor, the display to expand the desired reference category by, ranking the reference items in the desired reference category for relevancy to the content being viewed, displaying a link for a predetermined number of highest ranked reference items, and displaying a “more” indicator for indicating to the computer user the existence of additional ranked reference items, and receiving, by the processor, from the computer user a request for one of the displayed links.
 21. A computer program, tangibly embodied in a computer-readable storage medium, for presenting, to a computer user, reference information related to content being viewed by the computer user, the computer program comprising: a code segment for identifying taxonomy terms in content being viewed by a computer user, determining whether the content contains standard taxonomy tags or recognized non-standard taxonomy tags, and compiling a list comprising standard taxonomy terms relevant to the content; a code segment for creating a normalized tag index by locating words and tags contained in a plurality of content files from a plurality of disparate content sources, building for each of the plurality of content files an index of the located words and tags, and consolidating the built indices into a consolidated index stored on a database; a code segment for mapping the taxonomy terms to standard taxonomy terms when the taxonomy terms are synonyms to standard taxonomy terms; a code segment for parsing the content being viewed for a plurality of taxonomy terms, searching a normalized index for at least one of the plurality of taxonomy terms for determining related content, and retrieving the related content; and a code segment for displaying, to the computer user, related content that is based on the normalized tag index, wherein the normalized tag index indexes related content from the plurality of disparate content sources.
 22. A computer program, tangibly embodied in a computer-readable storage medium, for presenting to a computer user, reference information from a plurality of content sources, related to content being viewed by the computer user, the computer program comprising: a code segment for parsing the content being viewed by the computer user for a plurality of taxonomy terms; a code segment for searching a normalized index for at least one of the plurality of taxonomy terms for determining related content; a code segment for mapping the taxonomy terms to standard taxonomy terms when the taxonomy terms are synonyms to standard taxonomy terms; a code segment for retrieving the related content; and a code segment for displaying the related content to the computer user, wherein the normalized index indexes related content from a plurality of content sources.
 23. (canceled)
 24. The computer program of claim 22, wherein the code segment for displaying displays the related content on a display device that is also displaying the content being viewed by the computer user.
 25. A computer program, tangibly embodied in a computer-readable storage medium, taxonomy terms in content being viewed by a computer user, the computer program comprising: a code segment for determining whether the content being viewed by the computer user contains standard taxonomy tags or recognized non-standard taxonomy tags; a code segment for compiling a list comprising standard taxonomy terms relevant to the content, parsing the content for a plurality of standard taxonomy term tags, wherein the plurality of taxonomy terms are stored in a database, and normalizing a plurality of non-standard tags by mapping non-standard taxonomy term tags to standard taxonomy terms stored in a database; a code segment for mapping the content to standard taxonomy terms when the content is synonyms to standard taxonomy terms; and a code segment for displaying the related content to the computer user, wherein the normalized plurality of non-standard tags indexes related content from a plurality of content sources.
 26. The computer program of claim 25, wherein the code segment for compiling comprises a code segment for creating a plurality of standard taxonomy term tags for the content being viewed by comparing words in the content to a standard taxonomy terms and synonyms stored in a database.
 27. A computer program, tangibly embodied in a computer-readable storage medium, for creating a normalized tag index for use in presenting, to a computer user, information from a plurality of sources that is related to content being viewed by the computer user, the computer program comprising: a code segment for locating words and tags contained in a plurality of content files, based on identified taxonomy terms in content being viewed by the computer user, from a plurality of disparate content sources; a code segment for building for each of the plurality of content files an index of the located words and tags; a code segment for consolidating the built indices into a consolidated index stored on a database; a code segment for mapping one or more of the words or tags to standard taxonomy terms when the one or more of the words or tags are synonyms to standard taxonomy terms; and a code segment for displaying content related to the content being viewed to the computer user, wherein the consolidated index indexes related content from a plurality of content sources. 28.-29. (canceled)
 30. A computer program, tangibly embodied in a computer-readable storage medium, for enabling access to reference material while a computer user is viewing content on a display, the computer program comprising: a code segment for displaying category names for a plurality of reference categories in a region of the display based on the content being viewed by the computer user; a code segment for choosing relevant reference material based on identified taxonomy terms in the content being viewed by the computer user, wherein each reference item in the chosen relevant reference material is associated with one of the reference categories; a code segment for mapping the taxonomy terms to standard taxonomy terms when the taxonomy terms are synonyms to standard taxonomy terms; a code segment for presenting a notice indicator on the display in proximity to each of the reference category names that is associated with chosen relevant reference material, for indicating to the computer user existence of relevant reference material; a code segment for receiving from the computer user a category request for indicating a desired reference category; a code segment for modifying the display to expand the desired reference category by ranking the reference items in the desired reference category for relevancy to the content being viewed, displaying a link for a predetermined number of highest ranked reference items, and displaying a “more” indicator for indicating to the computer user the existence of additional ranked reference items; and a code segment for receiving from the computer user a request for one of the displayed links. 